package day03.io;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

/*
*JAVA IO 输入与输出
* java按照输入与输出方向划分两个操作：读和写
* 输入是用来读取的，是从外界输入到程序中的方向
* 输出是用来写出的
*
* java将输入与输出比喻为“流(stream)”，即：向同一侧顺序移动的过程。
* 并且定义了两个超类
* Java.io.InputStream：输入流
* 里面规定了所有字节输入流的读取方法。将来实际读取不同设备的输入流都继承自它，因此
* 都会有这里定义的读取操作，使得程序员可以相同的读取方式读取不同设备
*
* java.io.OutputStream：输出流。所有字节输出流都继承自它，里面定义了写出字节的方法
*
*
* 文件流：
* Java.io.FileInputStream和FileOutputStream
* 它们继承自InputStream和OutputStream。用来连接文件，进行读写文件数据流
*/
public class FoSDemo {
    public static void main(String[] args) throws IOException {
        /*
        *文件输出流提供了两种构造方法
        * 需要注释，如果指定的文件不存在会自动将其创建出来，前提是该文件所在的目录必须存在
        */
//        向当前目录下的fos.dat文件写入数据
//        File file =new File("../fos.dat");
//        FileOutputStream fos=new FileOutputStream(file);
        FileOutputStream fos=new FileOutputStream("./fos.dat");
        /*
        * void write(int d)
        * 将给定的int值对应的2进制的“低八位”写入文件
        *
        * 文件fos.dat的内容
        * 00000001
        */
        fos.write(1);
        fos.write(2);
        System.out.println("写出完毕");
        fos.close();
    }
}
